Introduction

This document integrates International Governmental Organization (IGO) membership data with our existing dataset on state recognition, material capabilities, and regime characteristics. IGO memberships represent an important dimension of status in international relations, particularly for the “status through recognition” component, and can help measure institutional integration in the international community.

Loading and Preparing IGO Data

# Load the IGO membership data
igo_data <- read.csv("/Users/yutianyi/Desktop/MA thesis data creation/IGO1816-2014/state_year_formatv3.csv")

# Examine data dimensions
cat("IGO dataset dimensions:", dim(igo_data)[1], "rows,", dim(igo_data)[2], "columns\n")
## IGO dataset dimensions: 15557 rows, 537 columns
cat("Year range:", min(igo_data$year), "to", max(igo_data$year), "\n")
## Year range: 1816 to 2014
cat("Number of countries:", length(unique(igo_data$ccode)), "\n")
## Number of countries: 217
# Examine some sample data
head(igo_data[, 1:10])
##   ccode year state AAAID AACB AALCO AARO AATA AATPO ABEDA
## 1     2 1816   usa    -1   -1    -1   -1   -1    -1    -1
## 2     2 1817   usa    -1   -1    -1   -1   -1    -1    -1
## 3     2 1818   usa    -1   -1    -1   -1   -1    -1    -1
## 4     2 1819   usa    -1   -1    -1   -1   -1    -1    -1
## 5     2 1820   usa    -1   -1    -1   -1   -1    -1    -1
## 6     2 1821   usa    -1   -1    -1   -1   -1    -1    -1
igo_data <- igo_data %>%
  filter(year>=1960)

head(igo_data)
##   ccode year state AAAID AACB AALCO AARO AATA AATPO ABEDA ABEPSEAC ACC ACCT
## 1     2 1960   usa    -1   -1     0   -1   -1    -1    -1       -1  -1   -1
## 2     2 1961   usa    -1   -1     0   -1   -1    -1    -1       -1  -1   -1
## 3     2 1962   usa    -1   -1     0    0   -1    -1    -1       -1  -1   -1
## 4     2 1963   usa    -1   -1     0    0   -1    -1    -1       -1  -1   -1
## 5     2 1964   usa    -1   -1     0    0   -1    -1    -1       -1  -1   -1
## 6     2 1965   usa    -1   -1     0    0   -1    -1    -1       -1  -1   -1
##   ACDT ACI ACML ACP ACPEU ACS ACSO ACSSRB ACU ACWL AFESD AFEXIMB AFGEC AFPU
## 1   -1  -1   -1  -1    -1  -1   -1      0  -1   -1    -1      -1    -1   -1
## 2   -1  -1   -1  -1    -1  -1   -1      0  -1   -1    -1      -1    -1    0
## 3   -1  -1   -1  -1    -1  -1   -1      0  -1   -1    -1      -1    -1    0
## 4   -1  -1   -1  -1    -1  -1   -1      0  -1   -1    -1      -1    -1    0
## 5   -1  -1   -1  -1    -1  -1   -1      0  -1   -1    -1      -1    -1    0
## 6   -1  -1   -1  -1    -1  -1   -1      0  -1   -1    -1      -1    -1    0
##   AFRAND AFRISTAT AFSPC AFTE AGC AGPUNDO AIC AIDC AIDO AIOEC AIPO AITIC ALO
## 1     -1       -1    -1   -1  -1      -1  -1   -1   -1    -1   -1    -1  -1
## 2     -1       -1    -1   -1  -1      -1  -1   -1   -1    -1   -1    -1  -1
## 3     -1       -1    -1   -1  -1      -1  -1   -1   -1    -1   -1    -1  -1
## 4     -1       -1    -1   -1  -1      -1  -1   -1   -1    -1   -1    -1  -1
## 5     -1       -1    -1   -1  -9      -1  -1   -1   -1    -1   -1    -1  -1
## 6     -1       -1    -1   -1  -9      -1  -1   -1   -1    -1   -1    -1   0
##   ALSF AMCO AMCOW AMF AMIPO AMPTU AMSC AMU ANZUS AOAD AOCRS AOMR AOPU AP APCC
## 1   -1   -9    -1  -1    -1    -1   -1  -1     1   -1    -1   -1   -1 -1   -1
## 2   -1   -9    -1  -1    -1     0   -1  -1     1   -1    -1   -1   -1 -1   -1
## 3   -1   -9    -1  -1     0     0   -1  -1     1   -1    -1   -1    0 -1   -1
## 4   -1   -9    -1  -1     0     0   -1  -1     1   -1    -1   -1    0 -1   -1
## 5   -1   -9    -1  -1     0     0   -1  -1     1   -1    -1   -1    0 -1   -1
## 6   -1   -9    -1  -1     0     0   -1  -1     1   -1    -1   -1    0 -1   -1
##   APEC APFIC APIBD APO APPA APT APTU ARC ARCAL ARIPO ARPU ASATP ASBLAC ASCBC
## 1   -1     1    -1  -1   -1  -1    0  -1    -1    -1    0    -1     -1    -1
## 2   -1     1    -1   0   -1  -1    0  -1    -1    -1    0    -1     -1    -1
## 3   -1     1    -1   0   -1  -1    0  -1    -1    -1    0    -1     -1    -1
## 4   -1     1    -1   0   -1  -1    0  -1    -1    -1    0    -1     -1    -1
## 5   -1     1    -1   0   -1  -1    0  -1    -1    -1    0    -1     -1    -1
## 6   -1     1    -1   0   -1  -1    0  -1    -1    -1    0    -1     -1    -1
##   ASCRubber ASEAN ASECNA ASEF ASPAC ATO ATPC AU AVRDC AfDB AfrOPDA AfricaRice
## 1        -1    -1     -9   -1    -1  -1   -1 -1    -1   -1      -1         -1
## 2        -1    -1     -9   -1    -1  -1   -1 -1    -1   -1      -1         -1
## 3        -1    -1     -9   -1    -1  -1   -1 -1    -1   -1      -1         -1
## 4        -1    -1     -9   -1    -1  -1   -1 -1    -1    0      -1         -1
## 5        -1    -1     -9   -1    -1  -1   -1 -1    -1    0      -1         -1
## 6        -1    -1     -9   -1    -1  -1   -1 -1    -1    0      -1         -1
##   Africare AmCC Andean AralSea ArticC AsDB BALTBAT BC BCSC BENELUX BIISEF
## 1       -1   -1     -1      -1     -1   -1      -1 -1    0       0     -1
## 2       -1   -1     -1      -1     -1   -1      -1 -1    0       0     -1
## 3       -1   -1     -1      -1     -1   -1      -1 -1    0       0     -1
## 4       -1   -1     -1      -1     -1   -1      -1 -1    0       0     -1
## 5       -1   -1     -1      -1     -1   -1      -1 -1    0       0     -1
## 6       -1   -1     -1      -1     -1   -1      -1 -1    0       0     -1
##   BIONET BIPM BIS BNDP BOBP BONN BORGIP BS BSEC CAAD CAARC CAB CABI CACB CACI
## 1     -1    1   1   -1   -1   -1     -1 -1   -1   -1     0  -1   -1   -1   -1
## 2     -1    1   1   -1   -1   -1     -1 -1   -1   -1     0  -1   -1   -1   -1
## 3     -1    1   1   -1   -1   -1     -1 -1   -1   -1     0  -1   -1   -1   -1
## 4     -1    1   1   -1   -1   -1     -1 -1   -1   -1     0  -1   -1   -1   -1
## 5     -1    1   1   -1   -1   -1     -1 -1   -1   -1     0  -1   -1   -1   -1
## 6     -1    1   0   -1   -1   -1     -1 -1   -1   -1     0  -1   -1   -1   -1
##   CAEC CAECC CAIPA CAMES CAMRSD CAMSF CARICOM CARIFTA CARII CATC CBFP CBI CBSS
## 1   -1    -1     0    -1     -1    -1      -1      -1     0    0   -1  -1   -1
## 2   -1    -1     0    -1     -1    -1      -1      -1     0    0   -1  -1   -1
## 3   -1    -1     0    -1     -1    -1      -1      -1     0    0   -1  -1   -1
## 4   -1    -1     0    -1     -1    -1      -1      -1     0    0   -1  -1   -1
## 5   -1    -1     0    -1     -1    -1      -1      -1     0    0   -1  -1   -1
## 6   -1    -1     0    -1     -1    -1      -1      -1     0   -9   -1  -1   -1
##   CCNR CCOM CCPA CComm CDB CEAO CEC CEEPN CEFTA CEI CELC CEMAC CENTO CEPGL CERN
## 1    1   -1   -1    -1  -1    0   0    -1    -1  -1    0    -1     0    -1    0
## 2    1   -1   -1    -1  -1    0   0    -1    -1  -1    0    -1     0    -1    0
## 3    1   -1    0    -1  -1    0   0    -1    -1  -1    0    -1     0    -1    0
## 4    1   -1    0    -1  -1    0   0    -1    -1  -1    0    -1     0    -1    0
## 5    1   -1    0    -1  -1    0   0    -1    -1  -1    0    -1     0    -1    0
## 6    0   -1    0    -1  -1    0   0    -1    -1  -1    1    -1     0    -1    0
##   CFATF CFC CHSTEA CICA CIFC CILSS CIMA CIS CMAEC CMAOC CMEA CMHASG COE COLOMBO
## 1    -1  -1      0   -1   -1    -1   -1  -1    -1    -1    0     -1   0       1
## 2    -1  -1      0   -1   -1    -1   -1  -1    -1    -1    0     -1   0       1
## 3    -1  -1      0   -1   -1    -1   -1  -1    -1    -1    0     -1   0       1
## 4    -1  -1      0   -1   -1    -1   -1  -1    -1    -1    0     -1   0       1
## 5    -1  -1      0   -1   -1    -1   -1  -1    -1    -1    0     -1   0       1
## 6    -1  -1      0   -1   -1    -1   -1  -1    -1    -1    0     -1   0       1
##   COMESA CONFEJES COPTAC COSAVE CPAB CPSC CPU CSLF CSTO CTCAf CTO CWGC CXC CfRN
## 1     -1       -1     -1     -1   -1   -1  -1   -1   -1     0   0    0  -1   -1
## 2     -1       -1     -1     -1   -1   -1  -1   -1   -1     0   0    0  -1   -1
## 3     -1       -1     -1     -1   -1   -1  -1   -1   -1     0   0    0  -1   -1
## 4     -1       -1     -1     -1   -1   -1  -1   -1   -1     0   0    0  -1   -1
## 5     -1       -1     -1     -1   -1   -1  -1   -1   -1     0   0    0  -1   -1
## 6     -1       -1     -1     -1   -1   -1  -1   -1   -1     0   0    0  -1   -1
##   ComAB ComSec Corg D8 DBGLS DLCOEA Danube EAC EACM EACSO EADB EAEC EAPC EAPO
## 1     0     -1    1 -1    -1     -1      0  -1   -1    -1   -1   -1   -1   -1
## 2     0     -1    1 -1    -1     -1      0  -1   -1     0   -1   -1   -1   -1
## 3     0     -1    1 -1    -1      0      0  -1   -1     0   -1   -1   -1   -1
## 4     0     -1    1 -1    -1      0      0  -1   -1     0   -1   -1   -1   -1
## 5     0     -1    1 -1    -1      0      0  -1   -1     0   -1   -1   -1   -1
## 6     0      1    1 -1    -1      0      0  -1   -1     0   -1   -1   -1   -1
##   EBRD ECB ECCA ECCAS ECCB ECCD ECCM ECCPIF ECO ECOWAS ECPTA ECSC EEC EFCC
## 1   -1  -1   -1    -1   -1   -1   -1      0  -1     -1     0    0   0    0
## 2   -1  -1   -1    -1   -1   -1   -1      0  -1     -1     0    0   0    0
## 3   -1  -1   -1    -1   -1   -1   -1      0  -1     -1     0    0   0    0
## 4   -1  -1   -1    -1   -1   -1   -1      0  -1     -1     0    0   0    0
## 5   -1  -1   -1    -1   -1   -1   -1      0  -1     -1     0    0   0    0
## 6   -1  -1   -1    -1   -1   -1   -1      0  -1     -1     0    0   0    0
##   EFILWC EFTA EIB EIP EIPA ELDO EMB EMBC EMBL EMI EMPPO EPA EPFSC EPO EPU ERIA
## 1     -1    0   0  -1   -1   -1  -1   -1   -1  -1     0   2    -1  -1  -1   -1
## 2     -1    0   0  -1   -1   -1  -1   -1   -1  -1     0   2    -1  -1  -1   -1
## 3     -1    0   0  -1   -1   -1  -1   -1   -1  -1     0  -1    -1  -1  -1   -1
## 4     -1    0   0  -1   -1   -1  -1   -1   -1  -1     0  -1    -1  -1  -1   -1
## 5     -1    0   0  -1   -1    0  -1   -1   -1  -1     0  -1    -1  -1  -1   -1
## 6     -1    0   0  -1   -1    0  -1   -1   -1  -1     0  -1    -1  -1  -1   -1
##   ESA ESO ESRO ETF EU EUFMD EURAMET EURATOM EUROCONTROL EUROFIMA EUROMET
## 1  -1  -1   -1  -1 -1     0      -1       1           0        0      -1
## 2  -1  -1   -1  -1 -1     0      -1       1           0        0      -1
## 3  -1   0   -1  -1 -1     0      -1       1           0        0      -1
## 4  -1   0   -1  -1 -1     0      -1       1           0        0      -1
## 5  -1   0    0  -1 -1     0      -1       1           0        0      -1
## 6  -1   0    0  -1 -1     0      -1       0           0        0      -1
##   Entente FAO FDIPLAC FEC G15 G24 G3 GATT GBACT GCC GCRSNC GEF GEO GHSI GLACSEC
## 1       0   1      -1  -1  -1  -1 -1    1    -1  -1     -1  -1  -1   -1      -1
## 2       0   1      -1  -1  -1  -1 -1    1    -1  -1     -1  -1  -1   -1      -1
## 3       0   1      -1  -1  -1  -1 -1    1    -1  -1     -1  -1  -1   -1      -1
## 4       0   1      -1  -1  -1  -1 -1    1    -1  -1     -1  -1  -1   -1      -1
## 5       0   1      -1  -1  -1  -1 -1    1    -1  -1     -1  -1  -1   -1      -1
## 6       0   1      -1  -1  -1  -1 -1    1    -1  -1     -1  -1  -1   -1      -1
##   GOIC HCPIL IABE IABath IACB IACI IACS IACSS IACW IADB IADefB IAEA IAFC IAHC
## 1   -1     0    0     -1   -1    1    0     1    1    1      1    1    0   -1
## 2   -1     0    0     -1   -1    1    0     1    1    1      1    1    0   -1
## 3   -1     0    0     -1   -1    1    0     1    1    1      1    1    0   -1
## 4   -1     0    0     -1   -1    1    0     0    1    1      1    1    0   -1
## 5   -1     0    0     -1   -1    1    0     1    1    1      1    1    0   -1
## 6   -1     1    0     -1   -1    1    0     1    1    1      1    1    0   -1
##   IAIAS IAIC IAIGC IAII IALong IAMLO IAPhy IARA IARHC IARadiO IARuhr IAS IASAJ
## 1     1   -1    -1   -1     -1     0     0   -1    -1       1     -1  -1    -1
## 2     1   -1    -1   -1     -1     0    -1   -1    -1       1     -1  -1    -1
## 3     1   -1    -1   -1     -1     0    -1   -1    -1       1     -1  -1    -1
## 4     1   -1    -1   -1     -1     0    -1   -1    -1       1     -1  -1    -1
## 5     1   -1    -1   -1     -1     0    -1   -1    -1      -1     -1  -1    -1
## 6     1   -1    -1   -1     -1     0    -1   -1    -1      -1     -1  -1    -1
##   IATB IATSJ IATTC IBA IBCS IBE IBEC IBI IBIER IBPMP IBRD ICAC ICAI ICAO ICAmO
## 1   -1    -1     1  -1   -1   1   -1  -1    -1    -1    1    1    1    1    -1
## 2   -1    -1     1  -1   -1   1   -1  -1    -1    -1    1    1    1    1    -1
## 3   -1    -1     1  -1   -1   1   -1  -1    -1    -1    1    1    1    1    -1
## 4   -1    -1     1  -1   -1   1    0  -1    -1     0    1    1    1    1    -1
## 5   -1    -1     1  -1   -1   1    0  -1    -1     0    1    1    1    1    -1
## 6   -1    -1     1  -1   -1   0    0  -1    -1     0    1    1    1    1    -1
##   ICC ICCEC ICCILMB ICCO ICCROM ICCS ICCSLT ICDR ICES ICFAM ICHRB ICMMP ICNC
## 1  -1    -1      -1   -1      0    0     -1   -1    0    -1    -1     1   -1
## 2  -1    -1      -1   -1      0    0     -1   -1    0    -1    -1     1   -1
## 3  -1    -1      -1   -1      0    0     -1   -1    0    -1    -1     1   -1
## 4  -1    -1      -1   -1      0    0     -1   -1    0    -1    -1     1   -1
## 5  -1    -1      -1   -1      0    0     -1   -1    0    -1    -1     1   -1
## 6  -1    -1      -1   -1      0    0     -1   -1    0    -1    -1     1   -1
##   ICNWAF ICPRP ICPTU ICRI ICRPBC ICSE ICSEAF ICSG ICTM ICfO IChemO ICivDO IComO
## 1      1    -1    -1   -1     -1    0     -1   -1   -1   -1     -1     -1    -1
## 2      1    -1    -1   -1     -1    0     -1   -1   -1   -1     -1     -1    -1
## 3      1    -1    -1   -1     -1    0     -1   -1   -1   -1     -1     -1    -1
## 4      1     0    -1   -1     -1    0     -1   -1   -1    0     -1     -1    -1
## 5      1     0    -1   -1     -1    0     -1   -1   -1    0     -1     -1    -1
## 6      1     0    -1   -1     -1    0     -1   -1   -1   -9     -1     -1    -1
##   IDC IEA IEC IES IEXB IFAD IFC IFCA IGAD IGC IGCC IHO IIA IICom IIE IIF IIFEO
## 1  -1  -1  -1  -1    0   -1   1   -1   -1   1    1   1  -1    -1  -1   1    -1
## 2  -1  -1  -1  -1    0   -1   1   -1   -1   1    1   1  -1    -1  -1   1    -1
## 3  -1  -1  -1  -1    0   -1   1   -1   -1   1    1   1  -1    -1  -1   1    -1
## 4  -1  -1  -1  -1    0   -1   1   -1   -1   1    1   1  -1    -1  -1   1    -1
## 5  -1  -1  -1  -1    0   -1   1   -1   -1   1    1   1  -1    -1  -1   1    -1
## 6  -1  -1  -1  -1    0   -1   1   -1   -1   1    1   1  -1    -1  -1   1    -1
##   IIWEE IJO ILO ILZSG IMBSlav IMC IMF IMI IMO IMSO INCAP INFOFISH INFSMK INPFC
## 1    -1  -1   1    -1      -1   0   1  -1   1   -1     0       -1     -1     1
## 2    -1  -1   1    -1      -1   0   1  -1   1   -1     0       -1     -1     1
## 3    -1  -1   1    -1      -1   0   1  -1   1   -1     0       -1     -1     1
## 4    -1  -1   1    -1      -1   0   1  -1   1   -1     0       -1     -1     1
## 5    -1  -1   1    -1      -1   0   1  -1   1   -1     0       -1     -1     1
## 6    -1  -1   1    -1      -1   0   1  -1   1   -1     0       -1     -1     1
##   INRO INSG INTELSAT INTERPOL IOATHRE IOCom IOEz IOLM IOMig IOOC IOPCF IOPH
## 1   -1   -1       -1        1      -1    -1    0    0     1    0    -1   -1
## 2   -1   -1       -1        1      -1    -1    0    0     1    0    -1   -1
## 3   -1   -1       -1        1      -1    -1    0    0     1    0    -1   -1
## 4   -1   -1       -1        1      -1    -1    0    0     1    0    -1   -1
## 5   -1   -1       -9        1      -1    -1    0    0     1    0    -1   -1
## 6   -1   -1       -9        1      -1    -1    0    0     1    0    -1   -1
##   IORARC IOcC IPC IPI IPedI IPentC IPhyL IPrizeC IRENA IRLCS IRO IRSG IRU ISA
## 1     -1    1  -1   0    -1     -1    -1      -1    -1     0  -1    1   0  -1
## 2     -1    1  -1   0    -1     -1    -1      -1    -1     0  -1    1   0  -1
## 3     -1    1  -1   0    -1     -1    -1      -1    -1     0  -1    1   0  -1
## 4     -1    1  -1   0    -1     -1    -1      -1    -1     0  -1    1   0  -1
## 5     -1    1  -1   0    -1     -1    -1      -1    -1     0  -1    1   0  -1
## 6     -1    1  -1   0    -1     -1    -1      -1    -1     0  -1    1   0  -1
##   ISB ISDB ISHREST ISRBC ISUPT ISuC ITC ITCC ITCLE ITPA ITRO ITTO ITU ITVRC
## 1  -1   -1      -1    -1    -1    1   0   -1    -1   -1   -1   -1   1    -1
## 2  -1   -1      -1    -1    -1    1   0   -1    -1   -1   -1   -1   1    -1
## 3  -1   -1      -1    -1    -1    1   0   -1    -1   -1   -1   -1   1    -1
## 4  -1   -1      -1    -1    -1    1   0   -1    -1   -1   -1   -1   1    -1
## 5  -1   -1      -1    -1    -1    1   0   -1    -1   -1   -1   -1   1    -1
## 6  -1   -1      -1    -1    -1    1   0   -1    -1   -1   -1   -1   1    -1
##   IUIC IUPCT IUPIP IUPLAW IUPNVP IUPR IVWO IWSG IWhale Iocean JALAAO JINR
## 1   -1     1     1      0     -1   -1    0    1      1     -1     -1    0
## 2   -1     1     1      0      0   -1    0    1      1     -1     -1    0
## 3   -1     1     1      0      0   -1    0    1      1     -1     -1    0
## 4   -1     1     1      0      0   -1    0    1      1     -1     -1    0
## 5   -1     1     1      0      0   -1    0    1      1     -1     -1    0
## 6   -1     1     1      0      0   -1    0    1      1     -1      0    0
##   JNOLCRH LACAC LACP LAEO LAFDO LAFTA LAIA LAIEC LATIN LCBC LGIDA LOAS LoN
## 1      -1    -1   -1   -1    -1    -1   -1    -1    -1   -1    -1    0  -1
## 2      -1    -1   -1   -1    -1     0   -1    -1    -1   -1    -1    0  -1
## 3      -1    -1    0   -1    -1     0   -1    -1    -1   -1    -1    0  -1
## 4      -1    -1    0   -1    -1     0   -1    -1    -1   -1    -1    0  -1
## 5      -1    -1    0   -1    -1     0   -1    -1    -1    0    -1    0  -1
## 6       0    -1    0   -1    -1     0   -1    -1    -1    0    -1    0  -1
##   MAOCN MARRI MCPTTC MCWCASM MFO MIGA MRU MWN Mercosur Montreal NACAP NAFO
## 1    -1    -1     -1      -1  -1   -1  -1  -1       -1       -1    -1   -1
## 2    -1    -1     -1      -1  -1   -1  -1  -1       -1       -1    -1   -1
## 3    -1    -1     -1      -1  -1   -1  -1  -1       -1       -1    -1   -1
## 4    -1    -1     -1      -1  -1   -1  -1  -1       -1       -1    -1   -1
## 5    -1    -1     -1      -1  -1   -1  -1  -1       -1       -1    -1   -1
## 6    -1    -1     -1      -1  -1   -1  -1  -1       -1       -1    -1   -1
##   NAFTA NAM NAPPO NASCO NATO NCM NCRR NCTR NDF NEAFC NERC NIB NPAFC NPFSC NPI
## 1    -1  -1    -1    -1    1  -1   -1   -1  -1    -1   -1  -1    -1     1  -1
## 2    -1   0    -1    -1    1  -1   -1   -1  -1    -1   -1  -1    -1     1  -1
## 3    -1   0    -1    -1    1  -1   -1   -1  -1    -1   -1  -1    -1     1  -1
## 4    -1   0    -1    -1    1  -1   -1   -1  -1    -1   -1  -1    -1     1  -1
## 5    -1   0    -1    -1    1  -1   -1   -1  -1    -1   -1  -1    -1     1  -1
## 6    -1   0    -1    -1    1  -1   -1   -1  -1    -1   -1  -1    -1     1  -1
##   NRC NTSC NVC NWHF NordC OAPEC OAS OAU OCAM OCAS OCCEDCA OCR OECD OECS OEEC
## 1  -1   -1  -1   -1     0    -1   1  -1   -1    0      -1   0   -1   -1    2
## 2  -1   -1  -1   -1     0    -1   1  -1    0    0      -1   0    1   -1    2
## 3  -1   -1  -1   -1     0    -1   1  -1    0    0      -1   0    1   -1   -1
## 4  -1   -1  -1   -1     0    -1   1   0    0    0       0   0    1   -1   -1
## 5   0   -1  -1   -1     0    -1   1   0    0    0       0   0    1   -1   -1
## 6   0    0  -1   -1     0    -1   1   0    0    0       0   0    1   -1   -1
##   OIC OIV OMDKR OMVG OPANAL OPEC OSCE OSLO OSPAR OTIF PAHC PAHO PAIGH PAP PAPU
## 1  -1  -1    -1   -1     -1    0   -1   -1    -1    0   -1    1     1  -1   -1
## 2  -1  -1    -1   -1     -1    0   -1   -1    -1    0   -1    1     1  -1   -1
## 3  -1  -1    -1   -1     -1    0   -1   -1    -1    0   -1    1     1  -1   -1
## 4  -1  -1    -1   -1     -1    0   -1   -1    -1    0   -1    1     1  -1   -1
## 5  -1  -1    -1   -1     -1    0   -1   -1    -1    0   -1    1     1  -1   -1
## 6  -1  -1    -1   -1     -1    0   -1   -1    -1    0   -1    1     1  -1   -1
##   PC PCA PCB PCSP PED PIARC PIBAC PICES PICS PIF PIPD PMAESA PSNARCO PTASEA
## 1 -1   1  -1    0  -1     1    -1    -1   -1  -1   -1     -1      -1     -1
## 2 -1   1  -1    0  -1     1    -1    -1   -1  -1   -1     -1      -1     -1
## 3 -1   1  -1    0  -1     1    -1    -1   -1  -1   -1     -1      -1     -1
## 4 -1   1  -1    0  -1     1    -1    -1   -1  -1   -1     -1      -1     -1
## 5 -1   1  -1    0  -1     1    -1    -1   -1  -1   -1     -1      -1     -1
## 6 -1   1  -1    0  -1     1    -1    -1   -1  -1   -1     -1      -1     -1
##   PUASP RASCOM RCAELA RCC RCFC RECSA RIMMO RIOPPAH RIOgroup RadioU RepCom SAAFA
## 1     1     -1     -1  -1   -1    -1    -1       0       -1     -1     -1    -1
## 2     1     -1     -1  -1   -1    -1    -1       0       -1     -1     -1    -1
## 3     1     -1     -1  -1   -1    -1    -1       0       -1     -1     -1    -1
## 4     1     -1     -1  -1   -1    -1    -1       0       -1     -1     -1    -1
## 5     1     -1     -1  -1   -1    -1    -1       0       -1     -1     -1    -1
## 6     1     -1     -1  -1   -1    -1    -1       0       -1     -1     -1    -1
##   SAARC SACEP SACU SADC SADCC SAMI SARTC SCA SCAf SCH SCHENGEN SCO SEAMEO SEATO
## 1    -1    -1   -1   -1    -1   -1    -1  -1   -9  -1       -1  -1     -1     0
## 2    -1    -1   -1   -1    -1   -1    -1  -1   -9  -1       -1  -1     -1     0
## 3    -1    -1   -1   -1    -1   -1    -1  -1   -9  -1       -1  -1     -1     0
## 4    -1    -1   -1   -1    -1   -1    -1  -1   -9  -1       -1  -1     -1     0
## 5    -1    -1   -1   -1    -1   -1    -1  -1   -9  -1       -1  -1     -1     0
## 6    -1    -1   -1   -1    -1   -1    -1  -1   -9  -1       -1  -1      0     1
##   SEGIB SELA SICA SIECA SITTDEC SPC SRDO SWAPU SWPD SugU TCRMG Turksoy UASC
## 1    -1   -1   -1     0      -1   1   -1    -1   -1   -1     1      -1   -1
## 2    -1   -1   -1     0      -1   1   -1    -1   -1   -1     1      -1   -1
## 3    -1   -1   -1     0      -1   1   -1    -1   -1   -1     1      -1   -1
## 4    -1   -1   -1     0      -1   1   -1    -1   -1   -1     1      -1   -1
## 5    -1   -1   -1     0      -1   1   -1    -1   -1   -1     1      -1   -1
## 6    -1   -1   -1     0      -1   1   -1    -1   -1   -1     1      -1   -1
##   UBEC UDEAC UEMOA UIUCV UKDWD UM UMAC UMOA UN UNESCO UNIDO UNIDROIT UPU USP
## 1   -1    -1    -1     0    -1 -1   -1   -1  1      1    -1        0   1  -1
## 2   -1    -1    -1     0    -1 -1   -1   -1  1      1    -1        0   1  -1
## 3   -1    -1    -1     0    -1 -1   -1    0  1      1    -1        0   1  -1
## 4   -1    -1    -1     0    -1 -1   -1    0  1      1    -1        0   1  -1
## 5   -1     0    -1     0    -1 -1   -1    0  1      1    -1        1   1  -1
## 6   -1     0    -1     0    -1 -1   -1    0  1      1    -1        1   1  -1
##   VALDIVIA VASAB WAEC WAHC WAHO WCDC WCO WEU WHO WIPO WMO WNF WPact WTO WTOURO
## 1       -1    -1    0   -1   -1   -1   0   0   1   -1   1  -1     0  -1     -1
## 2       -1    -1    0   -1   -1   -1   0   0   1   -1   1  -1     0  -1     -1
## 3       -1    -1    0   -1   -1   -1   0   0   1   -1   1  -1     0  -1     -1
## 4       -1    -1    0   -1   -1   -1   0   0   1   -1   1  -1     0  -1     -1
## 5       -1    -1    0   -1   -1   -1   0   0   1   -1   1  -1     0  -1     -1
## 6       -1    -1    0   -1   -1   -1   0   0   1   -1   1  -1     0  -1     -1
##   Wassen
## 1     -1
## 2     -1
## 3     -1
## 4     -1
## 5     -1
## 6     -1
# Step 3: Handle special codes (for each IGO membership variable)
igo_data_clean <- igo_data %>%
  mutate(across(AAAID:Wassen, function(x) {
    # Replace -1 (IGO not in existence) with NA
    # Replace -9 (Missing data) with NA
    ifelse(x %in% c(-1, -9), NA, x)
  }))

igo_data_clean <- igo_data_clean %>%
  rowwise() %>%
  mutate(
    full_memberships = sum(across(AAAID:Wassen, ~ .x == 1), na.rm = TRUE),
    associate_memberships = sum(across(AAAID:Wassen, ~ .x == 2), na.rm = TRUE),
    observer_statuses = sum(across(AAAID:Wassen, ~ .x == 3), na.rm = TRUE),
    total_memberships = sum(across(AAAID:Wassen, ~ .x %in% c(1, 2, 3)), na.rm = TRUE)
  ) %>%
  ungroup()

Prestigious IGO Memberships

Let’s identify “prestigious” IGOs that may confer higher status:

prestigious_igos <- c("UN", "NATO", "OECD", "IMF", "IBRD", "WTO", "EU", "IAEA", "WHO", "G15", "G24")

# Check which prestigious IGOs are in our dataset
prestigious_in_data <- prestigious_igos[prestigious_igos %in% names(igo_data_clean)]

# Create count of prestigious IGO memberships
igo_data_clean <- igo_data_clean %>%
  rowwise() %>%
  mutate(
    prestigious_memberships = sum(across(all_of(prestigious_in_data), ~ .x == 1), na.rm = TRUE),
    prestigious_ratio = if_else(total_memberships > 0, 
                               prestigious_memberships / total_memberships, 
                               0)
  ) %>%
  ungroup()

Regional vs. Global IGO Memberships

Let’s classify IGOs as regional or global to understand the scope of a country’s institutional integration:

regional_igos <- c("ASEAN", "EU", "OAS", "AU", "SAARC", "GCC", "SADC", "ECOWAS", 
                  "CARICOM", "EAC", "Mercosur", "NATO", "NAFTA", "AMU", "APEC", "BSEC")

regional_in_data <- regional_igos[regional_igos %in% names(igo_data_clean)]

# Calculate regional/global metrics  
igo_data_clean <- igo_data_clean %>%
  rowwise() %>%
  mutate(
    regional_memberships = sum(across(all_of(regional_in_data), ~ .x == 1), na.rm = TRUE),
    global_memberships = full_memberships - regional_memberships,
    regional_global_ratio = if_else(global_memberships > 0, 
                                   regional_memberships / global_memberships, 
                                   Inf)
  ) %>%
  ungroup()

Security, Economic, and Political IGOs

Let’s categorize IGOs by function to see which domains a country is most integrated in:

security_igos <- c("NATO", "CSTO", "WPact", "SEATO", "ANZUS", "MFO")
economic_igos <- c("IMF", "IBRD", "WTO", "GATT", "OECD", "OPEC", "IFC", "EU", 
                  "NAFTA", "EFTA", "CARICOM", "Mercosur", "ASEAN", "EAC", "SACU")
political_igos <- c("UN", "OAS", "AU", "OAU", "OSCE", "COE", "LOAS", "CIS")

security_in_data <- security_igos[security_igos %in% names(igo_data_clean)]
economic_in_data <- economic_igos[economic_igos %in% names(igo_data_clean)]
political_in_data <- political_igos[political_igos %in% names(igo_data_clean)]

# Calculate functional category memberships
igo_data_clean <- igo_data_clean %>%
  rowwise() %>%
  mutate(
    security_memberships = sum(across(all_of(security_in_data), ~ .x == 1), na.rm = TRUE),
    economic_memberships = sum(across(all_of(economic_in_data), ~ .x == 1), na.rm = TRUE),
    political_memberships = sum(across(all_of(political_in_data), ~ .x == 1), na.rm = TRUE)
  ) %>%
  ungroup()
igo_data_clean <- igo_data_clean %>%
  group_by(year) %>%
  mutate(
    # Z-scores for each year
    total_memberships_z = scale(total_memberships)[,1],
    prestigious_memberships_z = scale(prestigious_memberships)[,1],
    
    # Percentile ranks within each year
    total_memberships_pct = percent_rank(total_memberships),
    prestigious_memberships_pct = percent_rank(prestigious_memberships)
  ) %>%
  ungroup()
igo_data_clean <- igo_data_clean %>%
  mutate(
    # Combined institutional status score (weighted combination)
    institutional_status = (prestigious_memberships_z * 0.7) + (total_memberships_z * 0.3),
    
    # Functional balance (higher = more balanced across domains)
    functional_balance = 1 - (sd(c(security_memberships, economic_memberships, 
                               political_memberships), na.rm = TRUE) / 
                           (mean(c(security_memberships, economic_memberships, 
                                 political_memberships), na.rm = TRUE) + 0.01))
  )
#Prepare for joining with the fully_integrated_data
# Rename variables to avoid conflicts
igo_metrics <- igo_data_clean %>%
  select(ccode, year, full_memberships, associate_memberships, observer_statuses,
         total_memberships, prestigious_memberships, prestigious_ratio,
         regional_memberships, global_memberships, regional_global_ratio,
         security_memberships, economic_memberships, political_memberships,
         institutional_status, functional_balance)
fully_integrated_data <- read.csv("integrated_dataset.csv")
#Join with fully_integrated_data
fully_integrated_data_with_igo <- fully_integrated_data %>%
  left_join(igo_metrics, by = c("ccode" = "ccode", "Year" = "year"))
# Create status inconsistency measures
fully_integrated_data_with_igo <- fully_integrated_data_with_igo %>%
  group_by(Year) %>%
  mutate(
    # Standardize variables within each year
    cinc_z = scale(cinc)[,1],
    recognition_z = scale(recognition_percentage)[,1],
    
    # Status inconsistency measures
    material_institutional_gap = cinc_z - institutional_status,
    recognition_institutional_gap = recognition_z - institutional_status,
    
    # Overall status inconsistency (higher = more inconsistent)
    status_inconsistency = abs(cinc_z - institutional_status) + 
                           abs(recognition_z - institutional_status)
  ) %>%
  ungroup()
# Write the dataset to a CSV file in the current working directory
write.csv(fully_integrated_data_with_igo, file = "integrated_dataset_with_igo.csv", row.names = FALSE)